package com.todo.content.api;

import com.todo.common.common.entity.response.BizResponse;
import com.todo.content.api.request.*;
import com.todo.content.api.response.ContentDetailResponse;
import com.todo.content.api.response.ContentInfoResponse;

import java.util.List;

/**
 * @author azhebuxing
 * @date 2025/2/24 01:59
 * @description
 */
public interface ContentInfoApi {

    /**
     * 保存预校验
     *
     * @param request
     * @return
     */
    BizResponse<Boolean> savePreCheck(SavePreCheckRequest request);

    /**
     * 新增内容详情
     *
     * @param request
     * @return 内容Id
     */
    BizResponse<Long> insertContentDetail(InsertContentDetailRequest request);

    /**
     * 更新内容详情
     *
     * @param request
     * @return
     */
    BizResponse<Boolean> updateContentDetail(UpdateContentDetailRequest request);

    /**
     * 根据主键删除内容信息
     *
     * @param request
     * @return
     */
    BizResponse<Boolean> removeContentDetailById(RemoveContentDetailByIdRequest request);

    /**
     * 根据主键查询内容详情
     *
     * @param request
     * @return
     */
    BizResponse<ContentDetailResponse> queryContentDetailById(QueryContentDetailByIdRequest request);

    /**
     * 根据Id列表查询内容信息
     *
     * @param request
     * @return
     */
    BizResponse<List<ContentInfoResponse>> queryContentInfoByIdList(QueryContentInfoByIdListRequest request);
}
